<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Template</title>
</head>
<body>

<div id="app">
    <!-- 原始拼接 语法过于繁琐 -->
    <h2>{{firstName}} {{lastName}}</h2>

    <!-- methods方法获取 -->
    <h2>{{getFullName()}}</h2>
    <h2>{{getFullName()}}</h2>
    <h2>{{getFullName()}}</h2>
    <h2>{{getFullName()}}</h2>

    <!-- 使用计算属性进行获取 -->
    <h2>{{fullname}}</h2>
    <h2>{{fullname}}</h2>
    <h2>{{fullname}}</h2>
    <h2>{{fullname}}</h2>

    <!-- 在进行多次调用时，methods方法会重复进行调用  而计算属性不同，只会进行一次，缓存机制-->
</div>

<script src="../js/vue.js"></script>
<script>
    const app = new Vue
    (
        {
            el : "#app",
            data : 
            {
                firstName : 'Lebron',
                lastName : 'James',
            },
            methods : 
            {
                getFullName : function ()
                {
                    console.log("getFullName");
                    return this.firstName + ' ' + this.lastName;
                }
            },
            computed : 
            {
                fullname : function () 
                {
                    console.log("fullname");
                    return this.firstName + ' ' + this.lastName;
                }
            }
        }
    )
</script>
    
</body>
</html>